 import {
     observable,
     action
 } from "mobx-miniprogram";
 //  巡检任务详情
 export const inspectionTaskIndexDetailStore = observable({
     //     详细说明
     elaborate: '',
     //    处理办法（1限期整改 2转工单）
     handleMethod: 2,
     //    巡检过程照片（附件）
     inspectionPhotos: [1],
     //    巡检结果录音
     inspectionSound: '',
     //    工单信息（转工单）
     orderAddDto: {
         // 实际报修地址
         actualRepairPlace: '',
         // 预约时间
         appointment: '',
         // 期望完成时间
         completeTime: '',
         // 创建时间
         createTime: Date.now(),
         // 紧急程度
         degree: '',
         // 报修科室
         deptId: '',
         // 附件
         enclosure: '',
         // 资产名称
         equipment: '',
         // 资产位置
         equipmentAddress: '',
         // 资产位置id
         equipmentAddressId: '',
         // 故障描述
         faultRemark: '',
         // 故障分类
         faultType: '',
         // 知识库ID
         learningId: '',
         // 报修电话
         phone: '',
         // 报修地址
         place: '',
         // 影响范围
         rangeType: '',
         // 录音
         recording: '',
         // 预计工时
         reqTime: '',
         // 响应类型
         responseType: '',
         // 派单对象标识
         sendObjId: '',
         // 派单对象类型
         sendObjType: '',
         // 派单所属小组
         sendTeam: '',
         // 指派类型:1由我处理，2派单
         sendType: 2,
         // 工单来源
         source: '',
         // 报修人
         user: '',
     },
     //    整改开始日期(yyyy-MM-dd)
     rectifyStartDate: '',
     //    整改结束日期(yyyy-MM-dd)
     rectifyEndDate: '',
     //    整改要求及建议
     rectifyOpinion: '',
     //    整改责任人ID
     rectifyUserId: '',
     //    巡检结果（1正常 2异常）
     result: 2,
     //    限期整改录音
     soundFile: '',
     //    巡检内容巡检项
     taskItemList: [{
         //  主键
         id: '',
         //  实测值
         measuredValue: '',
         //  整改要求及处罚意见
         rectifyOpinion: '',
         //  巡检结果（1正常 2异常）
         result: '',
         itemUnitToName: '%'
     }],
     //  设置巡检结果
     setResult: action(function (result) {
         this.result = result
     }),
     //  设置处理办法
     setHandleMethod: action(function (val) {
         this.handleMethod = val
     }),
     //  设置巡检照片
     setInspectionPhotos: action(function (val) {
         this.inspectionPhotos = val
     }),
     //  设置整改日期
     setRectifyDate: action(function (e) {
         this.rectifyStartDate = e.detail.value[0]
         this.rectifyEndDate = e.detail.value[1]
     }),
     // 设置整改人的ID
     setRectifyUserId: action(function (e) {
         this.rectifyUserId = e ? e[0]?.value || '' : ''
     }),
     //  转工单-设置创建时间
     setOrderAddDtoCreateTime: action(function (e) {
         this.orderAddDto = Object.assign({}, this.orderAddDto, {
             createTime: e.detail.value
         })
     }),
     //  转工单-设置故障描述
     setOrderFaultRemark: action(function (e) {
         this.orderAddDto = Object.assign({}, this.orderAddDto, {
             faultRemark: e.detail.value
         })
     }),
     //  转工单-设置故障类型
     setOrderFaultType: action(function (val) {
         console.log(val, 'val');
         this.orderAddDto = Object.assign({}, this.orderAddDto, {
             faultType: val ? val[0]?.value || '' : ''
         })
     }),
     //  转工单-设置录音
     setOrderRecording: action(function (e) {
         console.log(e, 'e');
         this.orderAddDto = Object.assign({}, this.orderAddDto, {
             recording: e.detail.value
         })
     }),
     //  转工单-附件
     setOrderEnclosure: action(function (e) {
         console.log(e, 'e');
         this.orderAddDto = Object.assign({}, this.orderAddDto, {
             enclosure: e.detail.value
         })
     }),
     //  转工单-指派科室-switch
     setOrderSendType: action(function (e) {
         this.orderAddDto = Object.assign({}, this.orderAddDto, {
             sendType: e.detail.value,
             sendObjType: '',
             sendObjId: []
         })
     }),
     //  转工单-指派科室-科室选择
     setOrderChangeDept: action(function (e) {
         this.orderAddDto = Object.assign({}, this.orderAddDto, {
             sendObjId: e.detail.value,
             sendObjType: 3
         })
     }),
     //  转工单-指派科室
     setOrderDeptId: action(function (val) {
         this.orderAddDto = Object.assign({}, this.orderAddDto, {
             deptId: val ? val[0]?.value || '' : '',
         })
     }),
     //  转工单-预约处理时间
     setOrderAppointment: action(function (val) {
         this.orderAddDto = Object.assign({}, this.orderAddDto, {
             appointment: val
         })
     }),
     //  转工单-响应类型
     setOrderResponseType: action(function (e) {
         this.orderAddDto = Object.assign({}, this.orderAddDto, {
             responseType: e.detail.value
         })
     }),
     //  转工单-资产位置
     setOrderEquimentAddress: action(function (e) {
         this.orderAddDto = Object.assign({}, this.orderAddDto, {
             equipmentAddress: e ? e[0]?.label || '' : '',
             equipmentAddressId: e ? e[0]?.value || '' : ''
         })
     }),
     //  转工单-实际报修地址
     setOrderPlace: action(function (e) {
         this.orderAddDto = Object.assign({}, this.orderAddDto, {
             place: e ? e[0]?.value || '' : ''
         })
     }),
     //  转工单-预计工时
     setOrderReqTime: action(function (e) {
         this.orderAddDto = Object.assign({}, this.orderAddDto, {
             reqTime: e.detail.value
         })
     }),
     //  转工单-期望完成时间
     setOrderCompleteTime: action(function (e) {
         this.orderAddDto = Object.assign({}, this.orderAddDto, {
             completeTime: e.detail.value
         })
     }),


     changeOrderTag: action(function (e) {
         console.log(e, 'changeOrderTag');
         const key = e.currentTarget.dataset.key
         const value = e.detail.value
         this.orderAddDto = Object.assign({}, this.orderAddDto, {
             [key]: value
         })
     }),

     // 重置
     inspectionTaskIndexDetailStoreRest: action(function () {

     })


 });